package day06;

public class TestDemo {
    //无参无返回值
    public static void say(){
        System.out.println("大家好，我叫WKJ，今年38岁了");
    }
    //有参无返回值
    public static void sayHi(String name){//形参
        System.out.println("大家好，我叫"+name+"，今年38岁了");
    }
    //有参无返回值
    public static void sayHello(String name,int age){//形参
        if (age>=35){//在某种特定条件下，提前结束方法
            return;//结束方法
        }
        System.out.println("大家好，我叫"+name+"，今年"+age+"岁了");
    }
    //无参有返回值
    public static double getNum(){
        //在有返回值的方法中:
        //--必须得通过return来返回一个值，并且这个值的类型必须与返回值类型匹配
        //return "abc"; //编译错误，返回的值必须与返回值类型匹配
        return 8.88;//1)结束方法的执行  2)返回一个结果给调用方
    }
    //有参有返回值
    public static int plus(int num1,int num2){
        int num = num1+num2;
        return num;//返回的是num里面的那个数
//        return num1+num2; //返回的是num1与num2的和
    }
    //无参有返回值
    public static int[] testArray(){
        int[] arr = new int[10];
        for (int i=0;i<arr.length;i++){
            arr[i] = (int) (Math.random()*100);
        }
        return arr;
    }

    public static void main(String[] args) {
        sayHi("zhangsan");//调用有参无返回值的方法,实参
        sayHi("lisi");
        sayHi("wangwu");
        sayHello("zhangsan",25);//调用有参无返回值的方法
        sayHello("WKJ",38);
        double a = getNum();//把getNum()方法的返回值就是8.88赋值给double类型的变量a
        System.out.println(a);//8.88----模拟对返回值的后续操作
        int b = plus(5,6);//调用有参有返回值的方法,返回值用int类型变量b接收.
        System.out.println(b);//11----模拟对返回值的后续操作

        int m=5,n=6;
        int c = plus(m,n);//传递的是m和n里面的那个数
        System.out.println(c);//11----模拟对返回值的后续操作

        int[] d = testArray();//调用无参有返回值方法
        System.out.println(d.length);//10,数组里面包含10个元素---模拟对返回值的后续操作
        for (int i=0;i<d.length;i++){//遍历输出每个元素的值---模拟对返回值的后续操作
            System.out.println(d[i]);
        }
    }
}
